auxiliary/NSE hacking.R

library(dplyr)
library(tidyselect)
data("iris")

group_data <- function(df, group_var) {
  group_class <- tryCatch(class(group_var), error = function(e) "variable")
  print(group_class)
  if (group_class == "variable") group_var <- enquo(group_var)
  vars_select(names(df), !!!group_var)
}

group_data(iris, Species)
group_data(iris, "Species")
group_data(iris, Petal.Width)
group_data(iris, vars(Petal.Width))
group_data(iris, vars(Species, Petal.Width))
group_data(iris, c(Species, Petal.Width))
group_data(iris, c("Species", "Petal.Width"))
jepusto/SingleCaseES documentation built on Aug. 21, 2023, 12:08 p.m.